// All versions of IE
.ua-ie {
    body.scroll {
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }
    body #pm_thread {
        /* allow text selection with scroll*/
        overflow-y: scroll;
    }
    #pm_composer .composer {
        border: 1px solid $border;
    }
}

.ua-edge {}

// All iOS devices
.ua-ios {
    .angular-squire-wrapper {
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    .angular-squire {
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    #pm_captcha {
        -webkit-overflow-scrolling: touch;
        overflow: auto !important;
    }

    #pm_thread {
        position: relative;
    }
    #pm_thread:before {
        position: absolute;
        display: block;
        content: "";
        height: calc(100% + 1px);
        width: 100%;
        z-index: -1;
    }
}

// Firefox Linux
.ua-firefox.ua-desktop-linux {
    .pm_buttons a,
    .pm_button {
        overflow: hidden;
    }
}

// All Windows
.ua-windows_nt { }

// Win 7 Firefox
.ua-windows_nt-6-1.ua_firefox {
    .pm_labels label .close::before {
        line-height: 12px;
    }
}

.ua-mac_os_x.ua_firefox,
.ua-windows_nt-6-1.ua_firefox {
    .pm_labels label,
    .pm_labels label.closed:hover {
        line-height: 8px;
    }
    .summary .pm_tag {
        line-height: 18px;
    }
}

// All Firefox
.ua-firefox {
    /* remove extra padding on button */
    button::-moz-focus-inner { padding: 0; border: 0 }
    .pm_labels {
        label {
            line-height: -moz-block-height;
            &.closed:hover {
                line-height: -moz-block-height;
            }
        }
    }
    .pm_button {
        line-height: -moz-block-height;
    }
    #pm_composer .composer footer .pm_button {
        line-height: -moz-block-height;
    }
    form.searchForm fieldset button,
    form.searchForm fieldset button .fa {
        line-height: 32px;
    }
    .pm_tag {
        position: relative;
        top: -2px;
    }
    .pm_labels.inline label { }
    .pm_table th .pm_button, .pm_table td .pm_button {
        line-height: 36px;
    }
}

// All Windows, Firefox
.ua-windows_nt.ua-firefox {
    &.ua-firefox {
        #pm_composer .composer .pm_button {
            line-height: -moz-block-height;
        }
        .pm_buttons a,
        .pm_button {
            line-height: -moz-block-height;
        }
        #pm_sidebar section.sidebar .pm_button.round {
            line-height: 30px;
        }
        .pm_table th,
        .pm_table td {
            .pm_button.round {
                line-height: 32px;
                position: relative;
            }
        }
    }
}

// Windows 7, IE 11
.ua-windows_nt-6.ua-ie-11-0 {
    #pm_settings #plans .plans .plan .features li .pm_select {
        position: relative;
        top: 10px;
    }
}

.ua-firefox {
    .pm_button,
    .pm_buttons a {
        overflow: hidden;
    }
}

input:invalid,
input:-moz-ui-invalid {
    border:0;
    outline:none;
    box-shadow:none;
    -moz-box-shadow:none;
    -webkit-box-shadow:none;
}

/* removes "clear button" on WebKit/Blink */
.searchInput-noClearSearch::-webkit-search-cancel-button {
    display: none;
}

// Safari
.ua-safari {
    #conversation-list-rows .conversation .subject .pm_labels,
    #conversation-view .message > div.summary .labels .pm_labels { top: 0 }
}
// IE11
.on-ie11-only { display: none !important; }
.ua-ie-11 {
    #conversation-list-rows .conversation .subject { display: inline-block }

    .on-ie11-only { display: block !important; }
    .not-on-ie11 { display: none !important; }
}

/* 2FA inputs*/
/* only apply to tested browser cause placeholder styling is tricky*/

.ua-ie,
.ua-safari,
.ua-chrome,
.ua-firefox {
    .pm_form input[type="text"].TwoFA-input {

        font-size: 1.1rem;
        letter-spacing: 2px;

        @mixin resetTwoFA-input() {
            font-size: 14px;
            letter-spacing: 0px;
        }

        &::-webkit-input-placeholder {
            @include resetTwoFA-input();
            line-height: 24px; /* safari */
        }
        &:-moz-placeholder {
            /* Firefox 18- */
            @include resetTwoFA-input()
        }
        &::-moz-placeholder {
            /* Firefox 19+ */
            @include resetTwoFA-input()
        }
        &:-ms-input-placeholder {
            /*IE*/
            @include resetTwoFA-input()
        }
    }
}

#pm_slow { display: flex !important }
#pm_slow2 { display: none !important }

[id^="eo-"] {
    #pm_slow { display: none !important }
    #pm_slow2 { display: flex !important }
}

// Mailvelope
// Show Mailvelope button
.m-encrypt-frame {
    z-index: 110;
}

// Force frame to be aligned
.m-extract-frame.m-large.m-decrypt {
    left: 55px !important;
}
